package com.ruoyi.zzw.domain;

import java.util.List;
import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import com.fasterxml.jackson.annotation.JsonProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import org.apache.commons.lang3.builder.ToStringBuilder;
import org.apache.commons.lang3.builder.ToStringStyle;
import com.ruoyi.common.annotation.Excel;
import com.ruoyi.common.core.domain.BaseEntity;

/**
 * 事件管理对象 t_event_manage
 * 
 * @author ruoyi
 * @date 2023-12-06
 */
@EqualsAndHashCode(callSuper = true)
@Data
public class EventManage extends BaseEntity
{
    private static final long serialVersionUID = 1L;

    /** 事件id */
    @JsonProperty("cEventId")
    private Long cEventId;

    /** 子事件ID集合（用英文逗号分隔） */
    @Excel(name = "子事件ID集合", readConverterExp = "用=英文逗号分隔")
    @JsonProperty("cSubEventList")
    private String cSubEventList;

    /** 事件名称 */
    @Excel(name = "事件名称")
    @JsonProperty("cEventName")
    private String cEventName;

    /** 事件描述 */
    @Excel(name = "事件描述")
    @JsonProperty("cEventDescribe")
    private String cEventDescribe;

    /** 事件类别（一级、二级、三级、四级） */
    @Excel(name = "事件类别", readConverterExp = "一=级、二级、三级、四级")
    @JsonProperty("cEventCategory")
    private String cEventCategory;

    /** 事件类型（安全生产、交通事故、肇事肇祸等等） */
    @Excel(name = "事件类型", readConverterExp = "安=全生产、交通事故、肇事肇祸等等")
    @JsonProperty("cEventType")
    private String cEventType;

    /** 事件状态（待上报、待处置、处置中、已处置） */
    @Excel(name = "事件状态", readConverterExp = "待=上报、待处置、处置中、已处置")
    @JsonProperty("cEventStatus")
    private String cEventStatus;

    /** 发生时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @Excel(name = "发生时间", width = 30, dateFormat = "yyyy-MM-dd")
    @JsonProperty("cEventTime")
    private Date cEventTime;

    /** 发生地点 */
    @Excel(name = "发生地点")
    @JsonProperty("cEventLocation")
    private String cEventLocation;

    /** 办结时间 */
    @JsonFormat(pattern = "yyyy-MM-dd")
    @JsonProperty("cEventCompletedTime")
    @Excel(name = "办结时间", width = 30, dateFormat = "yyyy-MM-dd")
    private Date cEventCompletedTime;

    /** 所属地区id */
    @Excel(name = "所属地区id")
    @JsonProperty("cEventDistrictId")
    private Long cEventDistrictId;

    /** 所属地区名称 */
    @Excel(name = "所属地区名称")
    @JsonProperty("cEventDistrictName")
    private String cEventDistrictName;

    /** 经度 */
    @Excel(name = "经度")
    @JsonProperty("cLongitude")
    private String cLongitude;

    /** 维度 */
    @Excel(name = "维度")
    @JsonProperty("cLatitude")
    private String cLatitude;

    /** 事件影响范围(公里) */
    @Excel(name = "事件影响范围(公里)")
    @JsonProperty("cEventReach")
    private Long cEventReach;

    /** 重伤人数 */
    @Excel(name = "重伤人数")
    @JsonProperty("cEventInjuriesNum")
    private Long cEventInjuriesNum;

    /** 死亡人数 */
    @Excel(name = "死亡人数")
    @JsonProperty("cEventDieNum")
    private Long cEventDieNum;

    /** 直接经济损失 */
    @Excel(name = "直接经济损失")
    @JsonProperty("cDirectEconomicLosses")
    private String cDirectEconomicLosses;

    /** 事件视频链接 */
    @Excel(name = "事件视频链接")
    @JsonProperty("cEventVideoUrl")
    private String cEventVideoUrl;

    /** 事件跟踪信息 */
    private List<EventTrack> eventTrackList;

    public void setcEventId(Long cEventId) 
    {
        this.cEventId = cEventId;
    }

    public Long getcEventId() 
    {
        return cEventId;
    }
    public void setcSubEventList(String cSubEventList) 
    {
        this.cSubEventList = cSubEventList;
    }

    public String getcSubEventList() 
    {
        return cSubEventList;
    }
    public void setcEventName(String cEventName) 
    {
        this.cEventName = cEventName;
    }

    public String getcEventName() 
    {
        return cEventName;
    }
    public void setcEventDescribe(String cEventDescribe) 
    {
        this.cEventDescribe = cEventDescribe;
    }

    public String getcEventDescribe() 
    {
        return cEventDescribe;
    }
    public void setcEventCategory(String cEventCategory) 
    {
        this.cEventCategory = cEventCategory;
    }

    public String getcEventCategory() 
    {
        return cEventCategory;
    }
    public void setcEventType(String cEventType) 
    {
        this.cEventType = cEventType;
    }

    public String getcEventType() 
    {
        return cEventType;
    }
    public void setcEventStatus(String cEventStatus) 
    {
        this.cEventStatus = cEventStatus;
    }

    public String getcEventStatus() 
    {
        return cEventStatus;
    }
    public void setcEventTime(Date cEventTime) 
    {
        this.cEventTime = cEventTime;
    }

    public Date getcEventTime() 
    {
        return cEventTime;
    }
    public void setcEventLocation(String cEventLocation) 
    {
        this.cEventLocation = cEventLocation;
    }

    public String getcEventLocation() 
    {
        return cEventLocation;
    }
    public void setcEventCompletedTime(Date cEventCompletedTime) 
    {
        this.cEventCompletedTime = cEventCompletedTime;
    }

    public Date getcEventCompletedTime() 
    {
        return cEventCompletedTime;
    }
    public void setcEventDistrictId(Long cEventDistrictId) 
    {
        this.cEventDistrictId = cEventDistrictId;
    }

    public Long getcEventDistrictId() 
    {
        return cEventDistrictId;
    }
    public void setcEventDistrictName(String cEventDistrictName) 
    {
        this.cEventDistrictName = cEventDistrictName;
    }

    public String getcEventDistrictName() 
    {
        return cEventDistrictName;
    }
    public void setcLongitude(String cLongitude) 
    {
        this.cLongitude = cLongitude;
    }

    public String getcLongitude() 
    {
        return cLongitude;
    }
    public void setcLatitude(String cLatitude) 
    {
        this.cLatitude = cLatitude;
    }

    public String getcLatitude() 
    {
        return cLatitude;
    }
    public void setcEventReach(Long cEventReach) 
    {
        this.cEventReach = cEventReach;
    }

    public Long getcEventReach() 
    {
        return cEventReach;
    }
    public void setcEventInjuriesNum(Long cEventInjuriesNum) 
    {
        this.cEventInjuriesNum = cEventInjuriesNum;
    }

    public Long getcEventInjuriesNum() 
    {
        return cEventInjuriesNum;
    }
    public void setcEventDieNum(Long cEventDieNum) 
    {
        this.cEventDieNum = cEventDieNum;
    }

    public Long getcEventDieNum() 
    {
        return cEventDieNum;
    }
    public void setcDirectEconomicLosses(String cDirectEconomicLosses) 
    {
        this.cDirectEconomicLosses = cDirectEconomicLosses;
    }

    public String getcDirectEconomicLosses() 
    {
        return cDirectEconomicLosses;
    }
    public void setcEventVideoUrl(String cEventVideoUrl) 
    {
        this.cEventVideoUrl = cEventVideoUrl;
    }

    public String getcEventVideoUrl() 
    {
        return cEventVideoUrl;
    }

    public List<EventTrack> getTEventTrackList()
    {
        return eventTrackList;
    }

    public void setTEventTrackList(List<EventTrack> eventTrackList)
    {
        this.eventTrackList = eventTrackList;
    }

    @Override
    public String toString() {
        return new ToStringBuilder(this,ToStringStyle.MULTI_LINE_STYLE)
            .append("cEventId", getcEventId())
            .append("cSubEventList", getcSubEventList())
            .append("cEventName", getcEventName())
            .append("cEventDescribe", getcEventDescribe())
            .append("cEventCategory", getcEventCategory())
            .append("cEventType", getcEventType())
            .append("cEventStatus", getcEventStatus())
            .append("cEventTime", getcEventTime())
            .append("cEventLocation", getcEventLocation())
            .append("cEventCompletedTime", getcEventCompletedTime())
            .append("cEventDistrictId", getcEventDistrictId())
            .append("cEventDistrictName", getcEventDistrictName())
            .append("cLongitude", getcLongitude())
            .append("cLatitude", getcLatitude())
            .append("cEventReach", getcEventReach())
            .append("cEventInjuriesNum", getcEventInjuriesNum())
            .append("cEventDieNum", getcEventDieNum())
            .append("cDirectEconomicLosses", getcDirectEconomicLosses())
            .append("cEventVideoUrl", getcEventVideoUrl())
            .append("tEventTrackList", getTEventTrackList())
            .toString();
    }
}
